This invention relates generally to providing streaming media, and more specifically to providing a streaming media access system and a streaming media metering system based on metering information in a media stream.
Streaming media might comprise streaming audio, streaming video, a combination of the two, or similar data. Generally, streaming media is characterized by data that is transmitted or moved from a source to a destination where the destination can begin to use the data before the transmission or movement is complete, often without requiring an indication of an end to the data. As an example, an audiovisual presentation might be streamed over the Internet using data packets, wherein the recipient can start a presentation of the audiovisual presentation while data packets for later portions of the presentation are yet to be received.
Streaming media can be of indeterminate length, with no predetermined ending, such as might be the case for an Internet radio station streaming their broadcast, but streaming media might also have a finite length. While the term “streaming media” as used herein applies to indeterminate or predetermined length media unless otherwise indicated, for ease of understanding many examples refer to a “streaming media file”, which is most commonly media having a well-defined beginning and end. Thus, it should be understood that streaming media need not always have a well-defined beginning and end, but it is often characterized by such concepts.
A streaming media file might be transmitted in a continuous stream in a compressed form over the Internet and played by a media player running on a user device, such as a personal computer (PC) or other device, as the continuous streaming media file arrives. To play a streaming media file as it arrives, the file is uncompressed in real time, and the video and audio data are played on the media player, which directs video data to the display and audio data to speakers. A media player may be either an integral part of a browser or transmitted over the Internet to the user just prior to consumption of the streaming media file. Examples of known streaming media players include Microsoft Corporation's Windows Media Player™, RealNetwork Incorporated's RealOne Player™, RealPlayer™, or RealJukebox™, or Apple Computer Incorporated's QuickTime Player™. Streaming media players use a standard and/or proprietary algorithms for video and audio compression. Programs that compress streaming media files prior to the files being sent to a user and decompress the received files are typically referred to as codec programs.
Streaming media files are typically sent from prerecorded digitized media files, but may be distributed as part of a digitized live broadcast feed. In a live broadcast using an analog capture system, video and/or audio signals are converted from an analog format to a compressed digital signal in real time and transmitted from a server. Various protocols can be used for serving media files over the Internet or other network where such media might be transmitted and consumed. For example, the HTTP protocol usable over the Internet between HTTP servers and HTTP clients might be used. In a common implementation, an HTTP server serves up HTML pages and media that is linked to by the HTML pages. As HTML pages with their links to other HTML pages are considered to form a “web”, such as the “World Wide Web”, HTTP servers are often thought of as “Web” servers. Although such a server might serve more than just HTML, they are referred to herein as “web” servers, according to common usage. In common usage, an HTTP client, i.e., a program or device that receives and “consumes” HTML and media, is often referred to as a “browser”. Web servers used to stream streaming media files include Yahoo!'s web servers, such as Yahoo! Movies™, Yahoo! Music™, and Yahoo! News™, among others.
Streaming media, especially video, requires a large bandwidth channel to be effective, as the recipient often expects to begin a presentation shortly after the stream starts to be received and expects to consume the presentation continuously once it starts. Therefore, the bandwidth of the channel over which the streaming media is received typically needs to be on the order of the consumption rate of the media. For example, if a person desires to view a presentation that consumes 1 megabit/second, the person would probably need a channel that delivers on the order of 1 megabit/second to view the presentation as it is streamed. Attempts have been made to stream video over low bandwidth links, such as dial-up telephone lines, but the results are less than desirable as the presentation has to be made at low resolution or greatly compressed, both of which adversely affect the viewing experience.
While such low bandwidth channels might be acceptable for non-real-time downloading and free services, consumers are more likely to require higher quality presentations if they are to be paying for the presentations. Thus, as broadband connections become more available, more end users are able to receive streams of video presentations with sufficient quality that the end user is willing to pay for the streams. For example, if an end user connects to the Internet over a 56K dial-up line, the best the end user might expect for a video presentation is to watch the presentation with a low resolution or highly compressed, but an end user with a broadband connection might enjoy near full-screen video smoothly played. Examples of broadband connections include cable modems, optical fibers, wireless links, or digital subscriber line (DSL) channels, but other broadband connections in current use or later developed might be used instead.
Without users that are willing to pay for streaming services, some such services simply cannot be provided, as the costs of production are too great. As broadband has become more prevalent, more video streaming is economically possible. For example full length movies and live events, such as sports events or other media events, can be streamed and sufficient numbers of customers exist with broadband connections to make production of such streams economically viable. However, with the need to be paid to cover the production, new problems arise that are not present where the stream was being given away for free, for example, service providers need to ensure the streamed media provided to a user is paid for by the user.
Different payment models work in different situations and markets. Many cable broadcasters, for example, combine payment models, such as timed based subscriptions including the monthly subscription, the pay package, and the pay-per-view models. In the monthly subscription model, the user pays a monthly fee for unlimited access to a service for the paid months. In the pay package model, a user pays a one-time fee for unlimited access to a service for a fixed set of events, such as all the professional football game broadcasts for one football season. In the pay-per-view model, a user pays a one-time fee for access to the broadcasting of a single event. For example, a user may pay a one-time fee to view a live sporting event, such as Olympic sporting events that might not be broadcast on the public airwaves.
For television broadcasting of live and recorded events at times set by the broadcasters and the operators of the distribution channels, these models have been received by the consuming public with some success. Internet broadcasting, however, allows for on-demand viewing of events, with different viewers viewing the same or different streams at the same or different times and many paying customers have come to expect that offering. Thus, it is desirable to have a system wherein different viewers can consume different media streams and the providers of those streams can accurately track the consumption of the media streams, for billing, monitoring, planning, statistics tracking, and other purposes.